home *** CD-ROM | disk | FTP | other *** search
Text File | 2002-10-08 | 54.6 KB | 1,585 lines |
-
-
-
- - 1 -
-
-
-
- 8. _G_l_o_b_e_t_r_o_t_t_e_r__F_L_E_X_l_m__R_e_l_e_a_s_e__N_o_t_e_s
-
-
-
-
- Flexible License Manager
-
- Version 8.1b
- RELEASE NOTES
-
-
-
- These release notes describe the changes from FLEXlm v7.2.
-
- Summary of v8 Enhancements from v7.2
- ______________________________________
-
- Mobile Licensing. 2 new methods are supported:
- o BORROW-attribute: The client specifies the borrow
- duration, and the server keeps the license checked out
- via linger. The client uses a local file to do checkouts
- during the borrow period. Significant enhancements were made
- throughout the product to make this relatively secure
- (although less so than without borrowing) and easy-to-use.
- o FLEXid FLOAT_OK: Licenses issued node-locked to FLEXids
- can now float on a network, if the license has the FLOAT_OK
- attribute. Supported where client and server are Windows.
- If the dongle is attached to a license server, then the
- license floats on the network. To take home, user moves the
- dongle from the server to a standalone Windows system.
- License then only runs on standalone system, and is removed
- from network.
-
- 8-bit character support:
- o 8-bit characters (supporting Latin-based languages)
- is now fully supported, including license files, client
- environments, and log files.
-
- lmutil/lmtools Improvements:
- o lmreread now rereads all relevant information in the license
- and options file.
- o lmborrow command to support linger-based borrowing.
- o lmswitch command to control debug log file location and
- size, on a per vendor-daemon basis.
- o lmdown can be forced to run only on the license-server node,
- via 'lmgrd -local'.
- o lmpath: Allows users improved direct control over the license file
- settings.
-
- Unix heartbeat multi-thread support on popular platforms:
- o Previously, on Unix the only safe way to use heartbeats was
-
-
-
-
-
-
-
-
-
-
-
- - 2 -
-
-
-
- for the application to call heartbeats manually. This
- version supports multi-threaded heartbeats which are safe and
- considerably enhance security. This is not supported on
- platforms that do not have reliable pthreads support, but it
- is supported on all popular platforms.
-
- Windows, faster response when server is down, and faster lmtools:
- o Windows has a known bug in the networking 'connect()' that
- has caused 15 to 45-second delays when the server node is
- down, and general slow response when lmtools/lmutil
- communicates with a license server. This has been worked
- around in this version. The response is now about the same
- as Unix.
-
- DUP_GROUP enhancement:
- o Previously, only one DUP_GROUP setting was allowed per
- feature. This made it difficult for companies to change
- the DUP_GROUP policy. This limitation has been removed.
-
- End-user Options file:
- o IP-Addresses are supported wherever hostnames are
- supported.
- o DEBUGLOG can set location on a per vendor daemon basis.
-
-
- Improved Dongle Support
- o Dongles now supported on USB devices.
-
- SIGN2=
- o CRO customers upgrading to v8.1 will use SIGN2= licenses
-
- Upgrading to v8.1 -- changes to lm_code.h
- _________________________________________
-
- The new lm_code.h file no longer comes with ENCRYPTION_SEEDs, but
- instead has LM_SEED1-3. To upgrade simply:
-
- 1) Copy all your existing ENCRYPTION_SEEDs from your
- old lm_code.h into the new lm_code.h
-
- 2) Make up new unique 32-bit numbers for LM_SEED1-3 for
- your company. These must be different than the
- ENCRYPTION_SEED. For your convenience we now have
- a command-line utility, lmrand1 -seeds, that can be
- optionally used to generate your LM_SEEDs.
-
- In short, you need both your existing ENCRYPTION_SEEDs and new
- LM_SEEDs in the new lm_code.h file.
-
- Borrowing -- Linger-based
- _________________________
-
-
-
-
-
-
-
-
-
-
-
- - 3 -
-
-
-
- This form of borrowing is portable, easy-to-use, reliable, but
- potentially less secure than a regular FLEXlm checkout.
- Therefore, by default it is disabled. It requires no extra
- coding by developers though we have provided an API so that
- developers can customize it if desired (however, please see the
- note about lmnewgen below).
-
- Outline
- _______
-
- The basic mechanism is this: The user indicates through one of
- a variety of options that they want to borrow licenses, and
- then the applications are used (possibly just started and
- stopped to initiate the borrow), which use causes the licenses
- to be borrowed. If the app is run twice in this mode, the
- second checkout does not borrow another copy. The license
- remains checked out ("lingers") at the license server, and a
- local encrypted file is stored on the end-user's system.
- Subsequent checkouts are done against the local file, until the
- borrow period expires, at which time the local encrypted file
- no longer allows checkouts, and the server returns the
- borrowed/lingered license to the available pool.
- No clock synchronization is required between client and server.
-
- Security
- ________
-
- There are two security issues, which we've taken steps to
- minimize as best as possible while maintaining an easy-to-use
- and reliable system:
-
- RISK 1) Should the server be stopped and restarted,
- the licenses will be served again, which means
- that extra uses may occur. Note that most
- honest end-users are already reluctant to ever
- shutdown license servers, which inherently
- minimizes this risk.
-
- lmremove does not return linger licenses, so
- lmremove is not a risk.
-
- RISK 2) The local borrow file is itself a point of
- attack for counterfeiters. If this borrow file
- can be counterfeited, then the product can be
- used without a valid license. This is not as
- secure a CRO licenses, and unfortunately cannot
- be. We believe this to be "reasonably" secure
- except for products that are particularly
- attractive to determined hackers.
-
- More details about how we minimize these risks follow.
-
-
-
-
-
-
-
-
-
-
-
- - 4 -
-
-
-
- How to Enable
- _____________
-
- By default, linger-based borrowing is disabled.
-
- Linger-based borrowing is enabled by:
-
- 1) Set LM_BORROW_OK to 1 in machind/lm_code.h and
- then build the flexlm kit.
-
- LM_BORROW_OK must be set in lm_code.h to use borrowing.
-
- 2) The individual FEATURE/INCREMENT line must also have
- borrowing enabled, by adding the optional attribute
-
- BORROW[=n]
-
- where 'n' is the maximum number of hours that the
- license can be borrowed for. RISK 1 is reduced
- by reducing the number of hours. The default
- is one week, or 168 hours. The maximum is
- limited by the size of 32-bit integer: 2 billion
- hours.
-
-
- How to Borrow a license
- _______________________
-
- There are 3 methods:
-
- o lmborrow
- o LM_BORROW environment variable
- o LM_A_BORROW_EXPIRE
-
- For lmborrow and LM_BORROW, after the setup is done, the desired
- features must be checked out on the same day which then borrows
- the license.
-
-
- lmborrow: This is one of the lmutil utilities,
- and there is also a tab in lmtools for this. After
- lmborrow is run, all the desired applications must be
- run to checkout the desired features. Note that this
- only applies to the user running lmborrow on the node
- where lmborrow is run.
-
-
- lmborrow {vendor|all} date [time]
-
- For example:
-
-
-
-
-
-
-
-
-
-
-
-
- - 5 -
-
-
-
- lmborrow gsi 20-aug-2001 13:00
-
- where date is the date the license is to be returned
- in dd-mmm-yyyy format. The time is optional and is
- 24 hour clock in the client's local time. If
- unspecified, the checkout lasts until the end of the
- given day. The vendor is the vendor daemon name for
- the products to be borrowed, or "all" for all
- vendors.
-
- LM_BORROW: Environment variable. The format is:
-
- today:vendor:enddate[:time]
-
- where is
- _____ __
-
- today: Today's date in dd-mmm-yyyy format
- Any checkouts done on this date
- will create local borrow info.
- If the environment variable still
- exists on other dates, it will
- have no effect.
- enddate: The date the license is to be
- returned in dd-mmm-yyyy format
- time: 24-hour format. Optional. If
- unspecified, the time is at the
- end of the date on enddate.
- vendor: The vendor name of the products
- to be borrowed, or 'all' for
- all vendors.
-
- For example,
-
- LM_BORROW="15-aug-2001:gsi:20-aug-2001:13:00"
-
- The license is being borrowed on 15-aug-2001, and
- will be returned at 1p.m. on August 20.
-
- Note that lmborrow actually sets the LM_BORROW
- variable in the registry (Windows) or in the .flexlmrc
- (Unix), so the lmborrow utility is effectively a user
- interface for this variable.
-
-
- LM_A_BORROW_EXPIRE:
-
- This is for the application that wants to provide
- an interface for borrowing themselves.
-
- Before lc_checkout, call
-
-
-
-
-
-
-
-
-
-
-
- - 6 -
-
-
-
- lc_set_attr(job, LM_A_BORROW_EXPIRE,
- (LM_A_VAL_TYPE)datestring);
-
- where datestring is the date and optionally time
- when the borrowed license expires. Presumably
- the ISV will provide a user interface
- where the user specifies when the license
- should be returned. This then would be used as
- as 'datestring' above.
-
- Any subsequent checkouts in this job will create
- the local borrow info.
-
-
- After using lmborrow or setting $LM_BORROW, all the desired
- applications must be run and their licenses checked out at
- least once on the same day that lmborrow is run or $LM_BORROW
- is set, and while connected to the network where the license
- server is running. If they are run more than once, that's
- okay, only one license is borrowed. This effect lasts until
- the end of the day, in client local time. So, once lmborrow is
- used or $LM_BORROW set, all checkouts done on the same day, and
- while connected, will borrow licenses. If a connected checkout
- occurs any day following the setup, it will not borrow a
- license.
-
- Errors
- ______
-
- Checkout fails if borrowing is requested under the following
- conditions:
-
- o LM_BORROW_TOOLONG:
- Borrow period requested is longer than the
- license allows
-
- o LM_NOBORROWSUPP:
- The license doesn't support borrowing, or
- the application doesn't support borrowing.
-
- Other changes for Borrowing
- ___________________________
-
- A number of enhancements were made to make borrowing more
- convenient and secure. Many of these changes were made
- so that servers should rarely need to be shutdown, which
- minimizes RISK 1 outlined above.
-
- o The end-user options file is now reread with the
- lmreread command.
- o The lmswitch and DEBUGLOG end-user option allows
-
-
-
-
-
-
-
-
-
-
-
- - 7 -
-
-
-
- end-users to control the size of debug log files
- and redirect them as necessary.
- o The hostname on the SERVER line of the license is
- reread with a lmreread command.
- o If licenses are borrowed, lmdown will only work
- from the same host where the license server is
- running, and only if the user types
-
- lmdown -force [...]
-
- or selects force from the lmtools GUI.
- Otherwise, an error is presented saying there
- are outstanding borrowed licenses. The debuglog
- also prints the names of users with borrowed
- licenses.
- o lmstat user feature output includes borrow information
- where applicable.
- o lmborrow -status will print information
- about features borrowed to the client node, that is,
- the node where lmborrow is being run. This is useful
- for finding out which features have been borrowed
- while disconnected from the network.
- o The same information available from lmborrow -status
- can be obtained with
-
- LM_BORROW_STAT *s;
- lc_get_attr(job, LM_A_BORROW_STAT, &s);
- for (; s; s = s->next)
- {
- /* s contains local borrow status */
- }
- o lmborrow -clear will clear the borrow setting, so
- no checkouts will attempt to borrow a license.
- o 'lmgrd -local' only allows the lmdown command to be
- run from the same node where the lmgrd command is
- running.
-
- End-user options support
- ________________________
-
- BORROW_LOWWATER feature n
-
- where "feature" is the feature name and "n" is the number of
- licenses which cannot be borrowed. For example if
- the feature line says:
-
- FEATURE f1 ... 10 ... BORROW
-
- and the options file has
-
- BORROW_LOWWATER f1 3
-
-
-
-
-
-
-
-
-
-
-
- - 8 -
-
-
-
- then only 7 licenses can be borrowed.
-
- INCLUDE_BORROW feature type name
-
- See the INCLUDE syntax. If set, only users
- or hosts listed can borrow "feature".
-
- EXCLUDE_BORROW feature type name
-
- See the EXCLUDE syntax. If set, only users
- not excluded can borrow "feature".
-
- Minimizing 'RISK 2'
- ___________________
-
- This is the risk of someone counterfeiting a local borrow
- file.
-
- IMPORTANT NOTE: Borrowing security will only function fully if
- you regenerate lm_new.o every time you relink your
- application. This is illustrated in our sample makefiles.
-
- RISK 2 is minimized:
-
- o The borrow file encrypted string includes the
- FEATURE line that was used to borrow against.
- The license is checked out against this FEATURE line
- as usual, with the only exception being the
- count. Therefore, using CRO is an advantage with
- borrowing, since CRO licenses are presumed to
- be uncounterfeitable.
- o The borrow encrypted string includes a hostid. On
- Windows this hostid is the disk-serial number, since
- ethernet hostid is often unavailable when Windows is
- unconnected to a network. This hostid is validated.
- o The borrow encrypted string contains the borrow
- start- and end-time, and the difference between the
- start and end time must be no longer than the license
- allows for. Therefore the borrow files would have to
- be recreated every few days. That is, even if
- someone could counterfeit a borrow file, they would
- have to do regularly for each feature.
- o The cryptography used for borrowing is, by default,
- contained in lm_new.o (lm_new.obj on windows). This
- file should be generated anew for every version of
- every program. If so, then counterfeiting borrow
- files will be different for every version of every
- program. A fresh lm_new.c is generated by the
- lmnewgen program. (Note that lmnewgen is built
- by the makefile during product installation, and is
- not part of the kit. It's unique to your company.)
-
-
-
-
-
-
-
-
-
-
-
- - 9 -
-
-
-
- o By default, local borrow information is stored in
-
- Unix: $HOME/.flexlmborrow Windows: MY
- ComputerY_LOCAL_MACHINETWARE FLEXlm License ManagerBorrow
-
- The data is encrypted and not intended to be read.
- However, if you remove or alter the data, borrowing
- will naturally fail.
-
- lmborrow utility
- ________________
-
- This will borrow the licenses, and tell you what features
- you already have borrowed, then when they will expire.
-
- lmborrow {vendor|all} date [time]
-
- where date is the date the license is to be returned
- in dd-mmm-yyyy format. The time is optional and is
- 24 hour clock in local time.
-
- For example: lmborrow gsi 20-aug-2001 13:00
-
- lmborrow -status
-
- Prints a list of local borrow information so the
- end-user can see what they've already borrowed.
-
-
- Borrowing -- Dongle-based
- _________________________
-
- Borrowing can currently be implemented with dongles on Windows.
- Both the server and client must be Windows.
-
- To implement borrowing using dongles:
-
- 1) Issue a license node-locked to a dongle with the new
- FLOAT_OK attribute, along with a dongle. One dongle and
- one FEATURE line are required per license that will be
- borrowable.
-
- FEATURE f1 gsi 1.0 permanent uncounted FLOAT_OK HOSTID=FLEXID=7-b28520b9 SIGN=123456789012
-
-
- 2) The end-user attaches all of the dongles to the license server.
- These licenses then float, with a count of 1 per
- FLOAT_OK license.
-
- 3) To borrow, the end-user must have a copy of the FEATURE
- line on their system in a location where the application
-
-
-
-
-
-
-
-
-
-
-
- - 10 -
-
-
-
- expects to find it. The dongle is then moved from the
- server to the disconnected client node. The floating usage
- is disabled, the license works on the node with the
- dongle, even when disconnected from the network.
-
- 4) By default, it is possible to get one extra use from FLOAT_OK
- licenses by running a node-locked license on the license server
- since the license can also float while on the license server.
- This can be disabled using a hostid modifier on the FLOAT_OK
- attribute, explained below.
-
-
- Example:
-
- SERVER myhost 009027319bbb
- VENDOR gsi
- FEATURE f1 gsi 1.0 uncounted permanent FLOAT_OK HOSTID=FLEXID=7-b28520b9 SIGN=123456789012
- FEATURE f1 gsi 1.0 uncounted permanent FLOAT_OK HOSTID=FLEXID=7-b2857678 SIGN=ABCDEF123456
-
- To begin with, both dongles are on the server.
- When attached to the license server, each FLOAT_OK license
- becomes a single floating use. Therefore, up to 2 users can use
- f1 on the customers network, except on the server node,
- where, the license use is disallowed.
-
- If Sue wants to work at home, she installs the license file on
- her system (this only needs to be done once), and transfers the
- dongle from the server to her PC. The server now allows the
- remaining 1 license to float.
-
- After returning the dongle to the server, Sue (or the sysadmin)
- will need to run lmreread for the 2nd license to float again.
-
- Note that this borrowing method is unrelated to Linger-based
- borrowing. None of the following have any impact on
- dongle-based borrowing:
-
- LM_BORROW_OK
- lmborrow utility
-
- FLOAT_OK=serverhostid
- _____________________
-
- By default, it is possible to get one extra use from FLOAT_OK
- licenses by running a node-locked license on the license server
- node while the license is floating.
- This can be disabled using a hostid modifier on the FLOAT_OK
- attribute:
-
- 1) The serverhostid is the same hostid that appears on
- the SERVER line.
-
-
-
-
-
-
-
-
-
-
-
- - 11 -
-
-
-
- 2) The license server can only be run on the node
- with lmhostid equal to the serverhostid specified
- with FLOAT_OK.
-
- 3) The client can run on the server node, but
- they can only use the license being served by the
- license-server, not the node-locked license.
- Otherwise an extra use for each FLOAT_OK license
- could occur.
-
- Example:
-
- SERVER myhost 009027319bbb
- VENDOR gsi
- FEATURE f1 gsi 1.0 uncounted permanent FLOAT_OK=009027319bbb HOSTID=FLEXID=7-b28520b9 SIGN=123456789012
-
- This places some extra burden on the user and the license issuer,
- since the server's hostid (not the dongle flexid) must be
- specified in the license.
-
- HOSTID lists are not allowed with FLOAT_OK
- __________________________________________
-
- The hostid on the FLOAT_OK feature line must be only one hostid.
- For multiple dongles, use individual FEATURE lines for each
- dongle.
-
-
- 8-bit character support
- _______________________
-
- With this version, all "8-bit" characters are now supported.
- These are the characters required for most latin-based
- languages, including all accented vowels. FLEXlm now fully
- supports characters from 40 (space) through 255 (y-umlaut in
- ISO-latin encoding), along with the normal "spacing"
- characters: tab (9), newline(10), and CR(13).
-
- Note that an 8-bit editor with standard ISO-latin support is
- required to view these characters correctly in this document.
- Unix vi is often not correctly 8-bit, and MS-DOS command line
- is not. Windows editors usually correctly support ISO-Latin
- 8-bit.
-
- These 8-bit characters can now be used in all parts of FLEXlm
- including, but not limited to:
- o All components of the license file
- o All components of the options file
- o User names, hostnames
-
- Unix heartbeat multi-thread support on popular platforms
-
-
-
-
-
-
-
-
-
-
-
- - 12 -
-
-
-
- ________________________________________________________
-
- On Unix, heartbeats are now performed via multi-threading
- by default on most platforms. Previously, the default behavior
- was to use SIGALRM, which was not recommended and was
- susceptible to core dumps.
-
- Applications on platforms that support pthreads must now link
- in the pthreads library.
-
- On all platforms except AIX, this is done by appending
-
- -lpthread
-
- to the link line. On AIX, it's
-
- -lpthreads
-
- If an application cannot use this library, then
- link in lm_nomt.o before liblmgr.a, thereby disabling
- multi-threaded heartbeats.
-
- cc ... lm_nomt.o ... liblmgr.a ...
-
- Alternatively the old SIGALRM can be used by setting
- LM_A_MT_HEARTBEAT to 0:
-
- lc_set_attr(job, LM_A_MT_HEARTBEAT, (LM_A_VAL_TYPE)0);
-
- Although this is not recommended. Instead, it's better to
- use manual heartbeats.
-
- All platforms support multi-threaded heartbeats, EXCEPT:
-
- alpha_r6
- alpha_u3
- hp700_u10 (Use hp700_u11 instead)
- i86_b2
- i86_g2
- i86_l1
- i86_x5
- i86_u7
- ppc_u4
- rm400_u5
- rs6000_u3
- rs64_u4
- sco_u3
-
-
- CRO ISVs upgrading to v8.1
- __________________________
-
-
-
-
-
-
-
-
-
-
-
- - 13 -
-
-
-
- CRO customers will use SIGN2= licenses with v8.1. When
- generating licenses for v8.1, add SIGN2=0 before using
- lmcrypt on the license. The older clients will use the
- SIGN= for authenticating and newer clients will use
- SIGN2=.
-
- SIGN2= provides necessary additional CRO security.
-
-
- Other enhancements
- __________________
-
-
- UNIX: lockfile now in /var/tmp.
- ________________________________
-
- Historically, the flexlm lockfile is in /usr/tmp. We're
- migrating to /var/tmp since /usr/tmp is no longer part of
- the standard Unix file system. We still check for /usr/tmp
- lockfiles, however, so that this system is still secure.
-
-
- Locale independence.
- ____________________
-
- FLEXlm is guaranteed work identically regardless of the
- "current locale".
-
-
- lmpath
- ______
-
- This lmutil/lmtools utility allows direct control over
- FLEXlm license paths. It has 2 modes: get and set. To get
- the current paths, simply use lmpath with no arguments, e.g.,
-
- % lmpath
- lmpath - Copyright (C) 1989-2001 Globetrotter Software, Inc.
- Known Vendors:
- _____________
-
- demo: ./floating.lic:./locked.lic
- _____________
-
- Other Vendors:
- ______________
-
- /usr/local/flexlm/licenses/license.dat
-
- Note that where the path is set to a directory, all the *.lic files
- are separately listed.
-
-
-
-
-
-
-
-
-
-
-
- - 14 -
-
-
-
- To set the path, use:
-
- % lmpath vendor path
-
- where <vendor> is the vendor daemon name, or "all" for all vendors, and
- <path> is a colon (semi-colon on Windows) separated list.
-
- Note that this CANNOT set or override the environment.
- It only sets the FLEXlm registry on Windows and $HOME/.flexlmrc
- on Unix.
-
-
- lmswitch
- ________
-
-
- This lmutil and lmtools.exe command causes a vendor daemon to
- write its debug log information to a specified file. The
- syntax is:
-
- [ lmutil ] lmswitch [-c license-path] vendor filename
-
- where "vendor" is the vendor daemon name. The debug log information
- is then only for that one vendor daemon, where the default is to
- put all vendor daemons and lmgrd debug log info into the same file.
-
- This, for the first, allows companies to control the size of
- their debug log file, as well as keep separate log files for
- different vendors (see DEBUGLOG below).
-
-
- DEBUGLOG in options file
- ________________________
-
- The syntax is:
-
- DEBUGLOG file
-
- where file is the filename/path of where the debug log should go.
- Note that this only affects this particular vendor. The rest
- of the debuglog information is unaffected.
-
- See also "lmswitch" above.
-
-
- Windows: faster response when the server is down
- ________________________________________________
-
- Windows has a bug (which Microsoft has said the plan to fix
- at some unspecified future date) that causes the connect()
- function call to have a delay when the license server is down.
-
-
-
-
-
-
-
-
-
-
-
- - 15 -
-
-
-
- When using a "default port" (the port number is not on the
- SERVER line, or using @host), the delay was 15 seconds.
- This is now reduced to 1.5 seconds in version 8, by an internal
- workaround which used multi-threading.
-
- Options File
- ______________________
-
- IP-Address can be used instead of hostnames:
-
- Wherever a hostname can be used in the options file,
- an ip-address can be used instead, in the format
- #.#.#.#, eg., 123.456.123.456.
-
- In particular, this is supported in a HOST_GROUP.
-
- Options pool selection:
-
- When there are multiple pools for a single feature
- (this happens with certain INCREMENT lines, when, for example
- they are for different versions), and you want to
- refer to these in the options file, you have to "select" the
- pool. Historically this was done like this:
-
- feature:key=value
-
- However, since colon is now a valid featurename character,
- this syntax can be optionally specified:
-
- "feature key=value"
-
- The colon is replaced with a space and the whole thing
- is put in quote marks.
-
- lmnewgen
- ________
-
- lmnewgen is an executable that is built during product install
- by the makefile, and is based upon information in lm_code.h.
- It is unique to your company, and contains all the private
- security information unique to your company. It cannot be
- used to counterfeit licenses, but nevertheless shouldn't be
- released to untrusted sites.
-
- lmnewgen creates the lm_new.o (lm_new.obj) file which must
- be linked with your application and vendor daemon. (Note that
- this was called lmrand2 in previous versions, but has been
- significantly enhanced for borrowing).
-
- IMPORTANT NOTE FOR BORROWING: If you are using borrowing,
- your product will be more secure if you regenerate lm_new.o
-
-
-
-
-
-
-
-
-
-
-
- - 16 -
-
-
-
- every time you relink your application.
-
- .flexlmrc and .flexlmborrow on Unix
- ___________________________________
-
- The $HOME/.flexlmrc is where all FLEXlm environment variables can
- be stored, in addition to the Unix environment. It behaves
- like a registry location on Windows where FLEXlm variables
- can also be stored. For example, <VENDOR>_LICENSE_FILE can
- be stored there (where <VENDOR> is the name a company's vendor
- name).
-
- Similarly, borrowing information is stored by default in
- $HOME/.flexlmborrow.
-
- The location of these 2 files can be changed by setting
- the $FLEXLM_BORROWFILE and $FLEXLM_RC environment variables.
- Naturally, these should be set in the real environment, not in
- $HOME/.flexlmrc.
-
- These variables may be useful for developers when testing.
-
-
- lmreread
- ________
-
- lmreread now rereads:
-
- o options file
- o hostnames on the SERVER
- o path to options file on the VENDOR line
-
- Effect on USER_BASED and HOST_BASED:
-
- Rereading the options file has a security impact on
- USER_BASED and HOST_BASED. If it's too easy to change
- the INCLUDE list for USER_BASED and HOST_BASED, then
- these attributes stop having the desired effect.
-
- Therefore, there is a *delay* in effecting changes
- to INCLUDE lines that impact USER_BASED or HOST_BASED
- features.
-
- By default, the delay is 12 hours. This can be changed
- with the ls_user_based_reread_delay setting in the
- lsvendor.c file. It can only be changed there
- and affects all USER_BASED/HOST_BASED features.
-
-
- Windows Terminal Server support
- _______________________________
-
-
-
-
-
-
-
-
-
-
-
- - 17 -
-
-
-
- FLEXlm now detects when a node-locked uncounted license
- is running under Windows Terminal Server. If it's running on
- a "remote" node, then the checkout will be denied with
- LM_TSOK_ERR. If you want to allow users to run on Terminal
- Server remote nodes, then the new TS_OK attribute must be
- added to the license.
-
- lmrand1 -seed
- _____________
-
- This is an optional program to generate the seeds necessary for
- lm_code.h. That is, lm_code.h in v8.1 will require LM_SEED1-3
- and these must be random numbers the ISV makes up. So, they
- can use 'lmrand1 -seed' to make up these numbers if they want
- to.
-
- The output appears on the screen and in a file called lmseed.dat.
-
- Here's a sample session:
-
- > lmrand1 -seed
- The machind/lm_code.h file requires LM_SEED1-3 be set to random
- numbers. Once made up these numbers must *never* change. This program
- will automatically generate these for you, or you can make them up in
- some other fashion if you prefer.
-
- The output appears on the screen, and in "lmseed.dat"
- Press RETURN to generate the seeds... <CR>
- Please wait...................................................
- Once set, the values for LM_SEED1-3 must *never* change.
- #define LM_SEED1 0x186f24f0
- #define LM_SEED2 0x11cd5b60
- #define LM_SEED3 0x9f6cc8c3
-
- Note the <CR> is where the user presses Return/Enter.
-
-
- LM_A_KEY_LEVEL renamed to LM_A_SIGN_LEVEL
- _________________________________________
-
- This attribute is only used when migration to CRO from
- non-CRO. If you've used this attribute, you'll need to rename
- it to LM_A_SIGN_LEVEL.
-
-
- Features planned to be obsoleted in Version 9
- _____________________________________________
-
- o lmcksum will be removed from the license generator,
- lmutil and lmtools
-
-
-
-
-
-
-
-
-
-
-
-
- - 18 -
-
-
-
- o UDP support will be discontinued.
-
-
- Platform Specific Notes:
- ________________________
-
- WINDOWS
- _______
-
- i86_n3 -- Microsoft Windows 32-bit
- ______
-
- Currently, the GENLIC license generation utility is not
- available in this release. To encrypt licenses, use lmcrypt
- or makekey utilities.
-
- FLEXlock changes have occurred in this release of FLEXlm.
- Please see Programmers Guide documentation for additional
- information.
-
- Known Issues:
- ____________
-
- - Genlic GUI license generator utility not availiable in this release.
- Please use lmcrypt or makekey command-line utilities.
-
-
- Itanium
- _______
-
- it64_n -- Microsoft Windows XP / Windows .NET Server for Itanium 64-bit
- ______
-
- Currently, the GENLIC license generation utility is not
- available in this release. To encrypt licenses, use lmcrypt
- or makekey utilities.
-
- FLEXlock changes have occurred in this release of FLEXlm.
- Please see Programmers Guide documentation for additional
- information.
-
- Built with:
- __________
-
- - Microsoft Platform SDK November 2001, 64-bit
- - Microsoft C/C++ compiler version 13.00.9337.7 for IA-64
- - Microsoft Incremental Linker version 7.00.9337.7
- - Microsoft Program Maintenance Utility version 7.00.9337.7
-
- Hardware Requirements:
- _____________________
-
-
-
-
-
-
-
-
-
-
-
- - 19 -
-
-
-
- - Itanium CPU B3 Stepping or greater
- - BIOS Firmware revision 89 or greater
- - Memory RAM, 500 MB or greater
- - Hard Disk, 25 MB space free or greater
-
- Known Issues:
- ____________
-
- - Genlic GUI license generator utility support not available, please use
- lmcrypt or makekey command-line utilities.
- - Parallel or USB Dongle (FLEXid) support not available.
- - CPU Serial number support (Pentium III) not available on Itanium Chip.
- - The following situation can occur while building a vendor
- daemon in it64_n:
-
- if exist lm_new.c del lm_new.c
- lmnewgen.exe demo.exe -o lm_new.c
- Verify failed, 0xc6f8 != 0x30f8NMAKE : fatal error U1077:
- 'lmnewgen.exe' : return
- code '0xffffffff'
- Stop.
-
- The workaround for this error is to run the NMAKE again.
- This error may occur many times before a successful
- build.
-
-
- UNIX
- ____
-
- alpha_r6 -- Alpha Redhat 6
- ________
-
- uname -a: Linux chumley.globes.com 2.2.14-6.0 #1
- Tue Mar 28 16:56:56 EST 2000 alpha unknow
- cc: /usr/bin/cc
-
-
- alpha_u3 -- Compaq Tru64 Dec Unix Alpha OSF1 OS3+
- ________
-
- Compatible with OS3 and higher
-
- Note that lmstrip should be avoided on this OS, due to
- outstanding bugs. However, lmstrip doesn't provide
- any additional security on this OS, so it shouldn't be needed.
-
- uname -a: OSF1 zippy.globes.com V3.2 17 alpha
- cc: /usr/ccs/bin/cc -std
-
- hp700_u10 -- HPUX 10.x through 11.x 32-bit
-
-
-
-
-
-
-
-
-
-
-
- - 20 -
-
-
-
- ________
-
- uname -a: HP-UX oglobes B.10.20 A 9000/715 2005771344
- cc: /bin/cc -Aa -D_HIUX_SOURCE -D_HPUX_SOURCE +DA1.0 +DS1.0
- Hostid note: we no longer recommend using ethernet address
- as a hostid. It may fail on some HPUX 11.x systems.
- No MT-heartbeat support (use hp700_u11 if needed)
-
-
- hp700_u11 -- HPUX 11.x 32-bit
- ________
-
- uname -a: HP-UX hpc180 B.11.00 A 9000/780 2013810305 two-user
- cc: /bin/cc -Aa -D_HIUX_SOURCE -D_HPUX_SOURCE +DA1.0 +DS1.0
- Hostid note: we no longer recommend using ethernet address
- as a hostid. It may fail on some HPUX 11.x systems.
-
- hp64_u11 -- 64-bit HP PA-RISC
- _____________________________
-
- uname -a: HP-UX hpc180 B.11.00 A 9000/780 2013810305 two-user
- cc: /bin/cc -D_HIUX_SOURCE -D_HPUX_SOURCE +DA2.0W +DS2.0W
-
- i86_b2
- ______
-
- uname -a: BSD/OS bsdi.globes.com 2.1 BSDI BSD/OS 2.1
- Kernel #1: Mon Jun 10 15:58:19 MDT 1996
- polk@demiurge.BSDI.COM:/usr/src/sys/compile/GENERIC
- i386
- cc: /usr/bin/cc
- Multi-threaded heartbeats are not supported.
-
- i86_f3
- ______
-
- This is the freebsd platform. We no longer support i86_f2, which
- is incompatible with i86_f3. i86_f3 however, is completely
- compatible with i86_f4 (freebsd 4.x)
-
- uname -a: FreeBSD homegrown.globes.com 3.4-RELEASE FreeBSD
- 3.4-RELEASE #0: Mon Dec 20 06:54:39 GMT 1999
- jkh@time.cdrom.com:/usr/src/sys/compile/GENERIC i386
- cc: /usr/bin/cc
- Link: -pthread
-
- i86_l1, i86_g2, i86_r6 Linux
- ______________________
-
- i86_l1: Caldera linux, Redhat 4
- i86_g2: Linux with GLibc, Redhat 5
-
-
-
-
-
-
-
-
-
-
-
- - 21 -
-
-
-
- i86_r6: Redhat 6
-
- i86_g2 binaries will run fine on Redhat 6, but
- when mixing objects and libraries between redhat 5 and 6,
- when linked and run, will not behave correctly.
-
- i86_l1 binaries will *appear* to run on Redhat 5, but
- will fail with wierd errors.
-
- Only i86_r6 supports multi-threaded heartbeats.
-
- i86_u7 -- Unixware 7
- ______
-
- uname -a: UnixWare unixware7 5 7 i386 x86at SCO UNIX_SVR5
- cc: /usr/ccs/bin/cc
-
- i86_n3 -- 32-bit windows 95, 98, NT, 2000, ME
- ______
-
- cl: Microsoft Visual C++ v5 and higher
-
- necsx5_u12 -- NEC Super-UX
- ----------
-
- uname -a: SUPER-UX unix 12.1 SX-5
- cc: /usr/bin/cc -novector
- link: -lpthread
-
- The vendor key platform name for this platform is "necsx4".
-
- Known Issues
- ------------
- - Linger-based borrowing may not work correctly on this platform.
- - Rapid checkouts and checkins of licenses (multiple per second)
- may cause client connect failures (-15 error). Under this
- load, lmgrd appears to connecting clients not to be running,
- even though it is. The condition clears itself within 10-20
- seconds.
-
- rs6000_u3 AIX 3.x through 4.x, Power PC and RS6000, 32-bit
- _________
-
- uname -a: AIX rs6000 1 3 000276513100
- cc: /bin/cc -D_BSD -D_BSD_INCLUDES
- link flags: -lbsd
- Multi-threaded heartbeats not supported.
-
- rs64_u4 64-bit AIX
- _______
-
-
-
-
-
-
-
-
-
-
-
-
- - 22 -
-
-
-
- uname -a: AIX rs64 3 4 000687724C00
- cc: /usr/ibmcxx/bin/cc -DRS64 -DRS6000 -D_BSD -D_BSD_INCLUDES -q64
-
- link flags: -lbsd -q64 -lpthreads
-
- You have to use "ar -X64" and "strip -X64" on this platform also.
- Older 32-bit binaries run fine on this OS.
- Multi-threaded heartbeats not supported.
-
- sco_u3 -- SC0 3.2 and higher
- ______
-
-
- NOTE: If CRO is used, you will get lots of warnings during
- link. These are harmless and should be ignored.
-
- uname -a: SCO_SV sco 3.2 2 i386
- cc: /bin/cc
- Multi-threaded heartbeats not supported.
-
-
- sgi32_u6
- ________
-
- uname -a: IRIX64 challenger 6.1 07121831 IP26 mips
- cc: /bin/cc -n32 -mips3
- link: /bin/cc -n32 -mips3 -lpthread
-
- Note that o32 format is in liblmgr_o32.a in this directory.
-
- sgi64_u6
- ________
-
- uname -a: IRIX64 challenger 6.1 07121831 IP26 mips
- cc: /bin/cc -n64 -mips3
- link: /bin/cc -n64 -mips3 -lpthread
-
-
- sun4_u5
- _______
-
- uname -a: SunOS wheel.globes.com 5.5 Generic_103093-27
- sun4m sparc SUNW,SPARCstation-4
- cc: /opt/SUNWspro/bin/cc
- link: /bin/cc -lsocket -lnsl -lintl -lpthread
-
- sun64_u5
- _______
-
- uname -a: SunOS ultra5 5.7 Generic_106541-02 sun4u sparc
- SUNW,Ultra-5_10
-
-
-
-
-
-
-
-
-
-
-
- - 23 -
-
-
-
- cc: /bin/cc -xarch=v9
- link: /bin/cc -lsocket -lnsl -lintl -xarch=v9 -xildoff
- -lpthread
-
- Older, 32-bit binaries run fine on this OS.
-
- Bugs fixed in v8.1b
- ___________________
-
- Bug Severity Description
- ___________________________
- P6204 2 Client cannot find dongle when server is running
- as Service
- p6248 3 FLEXlm -15/-12 error on licensing calls when
- Firewall/VPN software installed
- p6276 2 lc_errtext, lc_err_info, and lc_errstring empty
- if lc_checkout returns -2
- p6288 3 ISSUER= removed when lmcrypt run
- p6310 2 Problem with makekey, error: Cannot assign
- int *(*)() to int(*)()
- P6319 3 Heartbeat and (terminal server) TS memory leak?
- p6333 3 FLEXlm 8.1 borrowing doesn't work with PACKAGE/FEATURE
- lines
- P6342 3 VB app doesn't return error codes
- P6369 2 FLEXlm v8 advanced settings
- P6382 3 Citrix Support
- p6407 3 Using FEATURE lines with ls_use_all_feature_lines=1
- does not behave as expected
- P6423 3 lc_cleanup causing crash on windows platform
-
-
- Bugs fixed in v8.1a
- ___________________
-
- Bug Severity Description
- ___________________________
- P5881 3 node-locked counted should be sorted before versioning
- P6009 4 lminstalls.exe still referred to lmgrd95.exe (windows)
- P6175 3 Debug log missing BADCODE error messages
- P6176 4 (Linux only) compile warnings from lmclient.h
- P6189 3 CHECK_BADDATE set, but borrowing ignores baddate
- P6200 2 v8 lmgrd not shutting down older vendor daemons
- P6213 2 Heartbeats can fail
- P6220 3 ls_use_all_feature lines set, INCREMENT lines fail
- P6241 2 lc_auth_data + LM_CO_WAIT + port@host, failed
- P6259 4 lminstall didn't prompt for input (windows only)
- P6265 3 lmgrd -local and lmreread failed
-
- Bugs fixed in v8.0
- ___________________
-
-
-
-
-
-
-
-
-
-
-
-
- - 24 -
-
-
-
- Bug Severity Description
- ___________________________
- P4943 3 FLEXlm removes root path from license list (windows)
- P5035 3 Lmgrd in loop spawning vendor daemons (windows)
- P5206 4 Vdaemon in directory named same as vdaemon fails
- (windows)
- P5311 5 Debug log on Windows uses Unix terminology
- P5312 3 Server doesn't detect ethercard hostid removed (windows)
- P5413 5 Compile warnings on some compilers
- P5424 4 lmcrypt reports -9 BADHOST error incorrectly
- P5446 5 Typo in license finder window (windows)
- P5447 4 Options file pool selection fails with KEY=
- P5530 4 SUPERSEDE can generate incorrect error message in
- debug log
- P5546 3 Lmtools can't shutdown 3-server system (windows)
- P5551 3 Failure if 2 licenses in path with same name
- P5586 3 MAX_OVERDRAFT lost after a server reread
- P5588 4 Link warnings (32-bit SGI)
- P5608 4 Error message sometimes doesn't include feature name
- P5611 4 Service fails if options file path has space (windows)
- P5654 4 LM_CO_LOCALTEST sometimes generated errors in debuglog
- P5659 4 Lmcrypt ignores syntax errors
- P5671 3 Lmswitchr doesn't report errors
- P5672 3 Lmstat -a incorrect, dup INCREMENT, line different case.
- P5761 3 Lmdiag won't work with older vendor daemon (-83)
- P5803 3 Lmdiag errors can show up in debuglog
- P5814 4 lmcrypt adds a lowercase L to some hostids (windows)
- P5821 4 Memory leak
- P5899 3 MAC doesn't read unix format licenses
- P5985 3 Lc_userlist not multi-thread safe
-
-
-
-
-
-
- [$Id: RELEASE_NOTES,v 1.117 2002/04/30 18:06:00 sluu Exp $]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-